//
// Created by jetkey on 18-8-13.
//

#ifndef IMICLIPTOOLS_TESTSUIT_FRAMEWORK_H
#define IMICLIPTOOLS_TESTSUIT_FRAMEWORK_H

#include <iostream>

#include <functional>

using namespace std;

using Printer = std::function<void (int type,const char* buff)>;

using Initor = std::function<bool (void **usrdata, int *fps,Printer)>;
using Step = std::function<bool (void *usrData, char *rgb,char *dep,char *out,int w,int h,Printer)>;
using Ender = std::function<void (void *usrData,Printer)>;

//typedef void(*TestFun)(Printer p);

struct TestCase{
    const char * name;
    void *usrData;
    Initor initor;
    Step step;
    Ender ender;
};


#endif //IMICLIPTOOLS_TESTSUIT_FRAMEWORK_H
